import http from "@/utils/request";

/**
 * 获取员工列表
 * @param {*} params 
 * @returns 
 */
export function getEmployeeListAPI(params) {
    return http({
        url: '/sys/user',
        params // 地址参数 查询参数
    })
}

/**
 * 批量下载员工
 * @param {*} params 
 * @returns 
 */
export function staffExportAPI(params) {
    return http({
        url: '/sys/user/export',
        responseType: 'blob' // 使用blob接收二进制文件流
    })
}

/**
 * 下载员工导入模板
 * @returns 
 */
export function exportTemplateAPI() {
    return http({
        url: '/sys/user/import/template',
        responseType: 'blob' // 使用blob接收二进制文件流
    })
}

/**
 * 批量导入员工
 * @param {*} data 
 * @returns 
 */
export function importTemplateAPI(data) {
    return http({
        url: '/sys/user/import',
        method: "post",
        data
    })
}

/**
 * 删除员工
 * @param {*} id 
 * @returns 
 */
export function delStaffAPI(id) {
    return http({
        url: `/sys/user/${id}`,
        method: "delete",
    })
}

/**
 * 新增员工
 * @param {*} data 
 * @returns 
 */
export function addStaffAPI(data) {
    return http({
        url: `/sys/user`,
        method: "post",
        data
    })
}

/**
 * 获取员工基本信息
 * @param {*} id 
 * @returns 
 */
export function getStaffAPI(id) {
    return http({
        url: `/sys/user/${id}`,
    })
}

/**
 * 修改员工
 * @param {*} data 
 * @returns 
 */
export function editStaffAPI(data) {
    return http({
        url: `/sys/user/${data.id}`,
        method: "put",
        data
    })
}

/**
 * 获取角色列表
 * @returns 
 */
export function getEnableRoleListAPI() {
    return http({
        url: `/sys/role/list/enabled`,
    })
}


/**
 * 分配权限
 * @param {*} data 
 * @returns 
 */
export function userAssignRolesAPI(data) {
    return http({
        url: `/sys/user/assignRoles`,
        method: "put",
        data
    })
}